package com.bawei.library_common.image.imageloader

import android.content.Context
import android.net.Uri
import android.widget.ImageView
import com.bawei.library_common.image.ImageOptions
import java.io.File

/**
 * @Author : yaotianxue
 * @Time : On 2023/5/23 15:40
 * @Description : IImageLoader 所有ImageLoader的顶层接口
 */
interface IImageLoader {
    /**
    * 加载本地图片到指定图片控件
    */
    fun loadFileIntoImageView(context: Context, file: File, target: ImageView, config: ImageOptions)
    /**
     * 加载网络图片到指定图片控件
     */
    fun loadUrlIntoImageView(context: Context,url: String,target: ImageView,config: ImageOptions)
    /**
     * 加载资源图片到指定图片控件
     */
    fun loadResourceIntoImageView(context: Context,source: Int,target: ImageView,config: ImageOptions)
    /**
     * 加载Uri图片到指定图片控件
     */
    fun loadUriIntoImageView(context: Context, uri: Uri, target: ImageView, config: ImageOptions)
    /**
     * 加载二进制数组到指定图片控件
     */
    fun loadByteArrayIntoImageView(context: Context,bytes: Array<Byte>,target: ImageView,config: ImageOptions)

}